export function patch(oldValue, vnode) {
    // vnode => 真实dom
    // (1) 创建新DOM
    let el = cerateEl(vnode)
    // (2) 替换 1） 获取父节点 2）插入 3）删除
    let parentEl = oldValue.parentNode
    parentEl.insertBefore(el, oldValue.nextsibling)
    parentEl.removeChild(oldValue)
    return el
}

// 创建dom
function cerateEl(vnode) {
    let { tag, children, key, data, text } = vnode
    if(typeof tag === 'string') { // 元素
        vnode.el = document.createElement(tag) // 创建元素
        // children []
        if(children.length > 0) {
            children.forEach(child => {
                vnode.el.appendChild(cerateEl(child))
            })
        }
    } else{
        vnode.el = document.createTextNode(text)
    }
    return vnode.el
}